# -*- coding: utf-8 -*-
"""
-------------------------------------------------
   File Name：     Project -> flask_web.py
   Description :   web应用程序接受接口
   Author :        William
   date：          2020/2/21/0021
-------------------------------------------------
   Change Activity:
                   2020/2/21/0021: 文件初创
                   2020/2/27：   增加时间管理功能

-------------------------------------------------
所有微信接收到的消息都会触发设置的回调函数地址
调用的方式都为Post Utf8格式 固定参数名为 ：Param  参数内容为json 格式包
json格式固定元素有：
posttype：
0 接收到命令回调
1 私聊接到消息回调
11 好友请求事件
2 群组接到消息回调
21 群成员增加事件
22 群成员减少事件
100 系统消息事件
101 系统启动
102 插件启用
103 插件被点击停止按钮时/插件重载/插件卸载/软件退出
105系统登录回调
Note：参数说明

如：插件启动时的json格式为：
{
“posttype”:102,
"Note":"插件启用时，运行一次这里（在可爱猫启动的时候也会触发一次）"
}
"""

import json

from flask import Flask, request

from ..Config.Setting import *

app = Flask(__name__)
web_cb = None


@app.route("/send/", methods=["POST", "GET"])
def index():
    if request.method == "POST":
        kk = request.get_data()
        kk1 = kk.split(b'Param=')
        kk = kk1[1]
        print(kk.decode())
        jk = json.loads(kk)
        # kk=kk['Param'][0]
        if web_cb:
            web_cb(jk)
        return "200"
    elif request.method == "GET":
        logger.info("GET请求测试")
        return "GET测试页面"


def set_cb(cb):
    global web_cb
    web_cb = cb
    print(web_cb)
